const express = require("express");
const session = require("express-session");
const userList = require("./data");
const app = express();
app.use(express.static(__dirname));
app.use(express.json());
app.use(session({
	name: 'id22',  // 设置cookie的name，默认值是：connect.sid
	secret: 'atguigu', // 参与加密的字符串（又称签名）
	saveUninitialized: false, //是否为每次请求都设置一个cookie用来存储session的id
	resave: false ,// 强制保存 session 即使它并没有变化,。默认为 true。建议设置成 false。
	cookie: {
		httpOnly: false, // 开启后前端无法通过 JS 操作
		maxAge: 1000*10 // 这一条 是控制 sessionID 的过期时间的！！！
	}
}));
// 登陆
app.post("/login",(req,res)=>{
	const {username,password} = req.body;
	res.set("Set-Cookie",["a=1","b=2"])
	const info = userList.find(item=>item.username===username && item.password === password);
	if(info){
		req.session.myId = info.id;
		res.json({
			ok:1,
			msg:"成功"
		})
	}else{
		res.json({
			ok:-1,
			msg:"登陆失败"
		})
	}
})
// 获取个人信息
app.get("/info",(req,res)=>{
	const id = req.session.myId;
	const info = userList.find(item=>item.id === id);
	if(info){
		res.json({
			ok:1,
			info
		})
	}else{
		res.json({
			ok:-1,
			msg:"获取失败"
		})
	}
})

// 退出登陆
app.get("/outLogin",(req,res)=>{
	req.session.destroy(()=>{
		res.json({
			ok:1,
			msg:"退出成功"
		})
	})
})
app.listen(8081,()=>{
	console.log("success");
})